package jdbc;

import javax.sound.midi.Soundbank;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/*
关联查询
 */
public class JDBCDemo5 {
    public static void main(String[] args) {
      /*
            查看王克晶所带班级的信息?
            列出老师名字，工资，职称以及班级的名字，所在楼层
            SELECT t.name,t.salary,t.title,c.name,c.floor
            FROM teacher t,class c
            WHERE t.id=c.teacher_id
            AND t.name='王克晶';

            SELECT t.name,t.salary,t.title,c.name,c.floor
            FROM teacher
            JOIN class c ON t.id=c.teacher_id
            WHERE t.name='王克晶'
         */
        try(
                Connection con = DBUtil.getConnection();
                ){
            Statement statement = con.createStatement();
            String sql = "SELECT t.name , t.salary, t.title, c.name, c.floor " +
                         "FROM teacher t " +
                         "JOIN class c ON t.id = c.teacher_id " +
                         "WHERE t.name = '王克晶' ";
            System.out.println(sql);
            ResultSet rs = statement.executeQuery(sql);
            while(rs.next()){
//                String tName = rs.getString("t.name");
//                int tSalary = rs.getInt("t.salary");
//                String tTitle = rs.getString("t.title");
//                String cName = rs.getString("c.name");
//                int cFloor = rs.getInt("c.floor");
                //获取字段值时可以使用字段索引，注意:从1开始为结果集第一个字段。可读性差，不推荐
                String tName = rs.getString(1);
                int tSalary = rs.getInt(2);
                String tTitle = rs.getString(3);
                String cName = rs.getString(4);
                int cFloor = rs.getInt(5);
                System.out.println(tName + " " + tSalary + " " + tTitle + " " + cName + " " + cFloor);
            }


        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}
